import { createI18n } from 'vue-i18n'
import zhCN from './zh-cn'
import enUS from './en-us'

// 获取本地存储的语言设置或使用默认值
const getStoredLocale = () => {
  const storedLocale = localStorage.getItem('locale')
  return storedLocale || 'zh-CN'
}

// 创建i18n实例
export const i18n = createI18n({
  legacy: false, // 使用组合式API
  locale: getStoredLocale(), // 从本地存储获取语言设置
  fallbackLocale: 'zh-CN', // 设置备用语言
  messages: {
    'zh-CN': zhCN,
    'en-US': enUS
  }
})

// 导出语言切换函数
export function setLocale(locale) {
  i18n.global.locale.value = locale
  document.querySelector('html').setAttribute('lang', locale)
  localStorage.setItem('locale', locale)
}